#include<cstdio>
#include<unistd.h>
#include <sys/types.h>
#include<stdlib.h>
// int main()
// {
//     fopen("log.txt","w");
//     while(1)
//     {
//         printf("I am a process\n");
//         sleep(1);
//     }
//     return 0;
// }

//进程实验1
// int main()
// {
//     printf("I am a process\n");
//     pid_t id=fork();
//     if(id<0)
//     {
//         perror("process create fail");
//         return 1;
//     }
//     else if(id==0)
//     {
//         while(1)
//         {
//             printf("I am a child process,pid is %d,ppid is %d,id:%d\n",getpid(),getppid(),id);
//             sleep(1);
//         }
//     }
//     else
//     {
//         while(1)
//         {
//             printf("I am a father process,pid is %d,ppid is %d,id:%d\n",getpid(),getppid(),id);
//             sleep(1);
//         }
//     }
//     return 0;
// }

//进程实验2(僵尸进程)
int main()
{
    printf("I am a process\n");
    pid_t id=fork();
    if(id<0)
    {
        perror("process failed");
        exit(1);
    }
    else if (id>0)
    {
        printf("parent[%d] is sleeping",getpid());
        sleep(30);
    }
    else{
        printf("child[%d] is begin Z",getpid());
        sleep(5);
        exit(EXIT_SUCCESS);
    }
    return 0;
}